﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Collections;
using li4_staffsched.Camada_de_Dados;
using li4_staffsched.Entidades;

namespace li4_staffsched.Camada_de_Negocio
{
    class Controlador
    {
        private ModeloDados model;

        public Controlador(ModeloDados mvc_model) {

            this.model = mvc_model;

        
        }


        //variavel model

        public Boolean validaLogin(SqlDataReader dados_login,String user, String pass)
        {
            String username = null;
            String password = null;

            if (dados_login == null) return false;

            while (dados_login.Read()) {

                username = (String)dados_login[0];
                password = (String)dados_login[1];
            }

            if (username == user && password == pass) { return true; }

            return false;
        }
        public SqlDataReader getDados(String tabela,String atributo,String campo) {

            SqlDataReader dados_login = null;

            String cmdSql = GeraComandosSQL.cmdGetUniqueEq(tabela,atributo,campo);

            //camada de dados -> executaComando(); <- devolve dados

            this.model.getConcexao.ExecutaQuery("", cmdSql);

            dados_login = this.model.getConcexao.RecordSet;

            return dados_login;
        }

        public SqlDataReader pesquisaDados(String tabela, String atributo,String user) {

            SqlDataReader dados_sql = null;

            String cmdSql = GeraComandosSQL.cmdGetParcial(tabela,atributo,user);
            
            //camada de dados -> executaComando();

            this.model.getConcexao.ExecutaQuery("", cmdSql);

            dados_sql = this.model.getConcexao.RecordSet;

            return dados_sql;  
        }

        public Object gerarEntidades(String tipo, SqlDataReader dados) {

            if (tipo.CompareTo("Cliente") == 0)
            {  dados.Read(); return new Cliente(); }


            return null;
        
        }

        public Boolean registarCliente(
    }
}
